#ifndef __ELISA_LEXER__
#define __ELISA_LEXER__

#ifndef YY_DECL
#define	YY_DECL elisa::Parser::token_type ElisaLexer::lex( \
	elisa::Parser::semantic_type *yylval, elisa::Parser::location_type *yylloc)
#endif

#ifndef __FLEX_LEXER_H
#include "FlexLexer.h"
#endif

#include "parser.hpp"

namespace elisa
{

class ElisaLexer : public yyFlexLexer
{
public:
	ElisaLexer(std::istream *yyin = 0, std::ostream *yyout = 0);

	virtual ~ElisaLexer();

	virtual elisa::Parser::token_type lex(
		elisa::Parser::semantic_type *yylval, elisa::Parser::location_type *yylloc);
};

}

#endif /* __ELISA_LEXER__ */
